package com.ybkj.o2o.zhuanche.entity;

import com.ybkj.o2o.zhuanche.common.json.DateTimeJsonSerializer;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;

import org.apache.commons.lang3.StringUtils;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * 专车订单.
 * @author Administrator
 */
public class Order implements Serializable {
  public static final String ORDER_TYPE_PHONE = "电话预约";
  public static final String ORDER_TYPE_APP = "APP预约";
  public static final String ORDER_TYPE_WEIXIN = "微信预约";
  public static final String ORDER_TYPE_WEB = "网站预约";
  public static final String ORDER_TYPE_BUDAN = "司机补单";
  public static final String ORDER_TYPE_SCAN = "扫描下单";

  public static final String BANK = "银行";
  public static final String NO_BANK = "非银行";
  private Long id;// 订单ID

  private String orderNo; // 订单号

  private Long passengerId;// 客户ID
  
  private Double startPlaceToDriverDistance;// 乘客距司机距离  米
  
  private String startPlaceToDriverDistanceStr;// 乘客距司机距离  米

  private String passengerName;// 客户名字

  private String passengerPhone;// 客户电话

  private Long carId; // 车辆ID

  private Long carTypeId; // 车辆类型ID

  private String carName;// 车辆名称

  private String carTypeName;// 车辆类型名称

  private String carNumber; // 车牌号

  private Long channelId;// 来源地

  private String channelName;// 来源名称

  private Integer status;// 订单状态:0:新单 1:已派单 2:已接单 3:到达预约地 4:执行中 5:已完成 6:已销单

  private Long employId;// 服务人员ID

  private String employName;// 服务人员姓名

  private String employPhone;// 服务人员电话

  private String employNo;// 服务人员工号

  private String employPhoto;// 服务人员头像

  private Double employScore;// 服务人员综合评分

  private Long companyId;// 所属公司ID

  private String companyName;// 所属公司名称
  
  private Long rentalCompanyId;// 所属租赁公司ID
  
  private String rentalCompanyName;// 所属租赁公司名称

  private Long voiceId; //语音消息id
  
  private String voiceHttpPath; //语音消息音频文件网络地址
  
  private String appkey;
  @JsonSerialize(using = DateTimeJsonSerializer.class)
  private Date created;// 创建时间
  @JsonSerialize(using = DateTimeJsonSerializer.class)
  private Date updated;// 修改时间

  private Boolean isClosed;// 是否关闭提示框

  private Boolean review;// 订单评价

  private Long version;// 版本号

  private String cancelCause;// 销单原因

  private String payType;// 结算类型
  @JsonSerialize(using = DateTimeJsonSerializer.class)
  private Date lasturge;// 上次催促时间

  private Integer startWait;// 开始等待分钟数

  private String startAddress;// 开始地址

  private String startAddressDetail; // 预约地详细地址

  private Double startLat;// 开始经度

  private Double startLng;// 开始纬度

  private Integer midwayWait;// 中途等待分钟数

  private String endAddress;// 目的地

  private String endAddressDetail; // 目的地详细地址

  private Double endLat;// 目的地经度

  private Double endLng;// 目的地纬度

  private Long employCompanyId;// 司机所在公司ID

  private Double employProfit;// 司机收入

  private Double companyProfit;// 公司收入

  private Double startPrice;// 起步价格

  private Double mileage;// 行驶里程

  private Integer runTime;// 行驶分钟数

  private Double mileagePrice;// 行驶里程费用

  private Double runTimePrice;// 服务时间费用

  private Double waitPrice;// 等待时间费用

  private Long couponId;// 优惠券Id

  private Double couponMoney;// 优惠价抵消金额

  private Double budgetPay;// 预计费用

  private Double realPay;// 实际费用

  private Double cashMoney;// 现金

  private Double signMoney;// 签单金额

  private Double balanceMoney;// 余额金额
  @JsonSerialize(using = DateTimeJsonSerializer.class)
  private Date serverTime;// 预约时间

  private List<OrderMemo> orderMemos;// 订单备注

  private OrderReview orderReview;// 评价对象
  
  private String reviewContent;// 评价内容

  private List<OrderStatus> orderStatuslist;// 订单状态

  private Boolean zhuanchePrePay;// 临时字段
  @JsonSerialize(using = DateTimeJsonSerializer.class)
  private Date finishTime;

  private Long areaId;// 地区收费Id

  private List<OrderStatus> statusList;// 订单的所有状态记录

  private Double preStartPrice; // 预算的起步价

  private Double premileagePrice;// 预算的里程费

  private Double prerunTimePrice;// 预算的服务时间费用

  private Integer pretravelTime;// 预估的时间

  private Double premileage;// 预估的里程

  private Double alipayMoney; // 支付宝支付金额

  private Double weixinMoney; // 微信支付金额
  
  private Double unionpayMoney; // 银联支付金额

  private Double guoluMoney; // 过路费

  private Double yuanchengMoney; // 远程费

  private Double otherMoney; // 其它费用

  private Boolean treatment; // 是否确认过费用
  @JsonSerialize(using = DateTimeJsonSerializer.class)
  private Date treatmentDate; // 确认费用时间

  private String prePayTypeDetail; // 预支付类型 sign(签单) balance(余额) alipay(支付宝) weixin(微信)

  private String afterPayTypeDetail; //后支付类型 helppay(代付)sign(签单)balance(余额) alipay(支付宝) weixin(微信)

  private String showPhone;

  private Boolean firstOrderFree;// 首单免费

  private Boolean baoxiao;// 是否报销

  private Double baoxiaoMoney;// 报销金额

  private String employMemo;// 订单结算时备注

  private Long serviceTypeId;// 服务业务id

  private ServiceType serviceType;

  private String memo;// 用车需求

  private String flightNo;// 航班号

  private String trainNo;// 车次号

  private Long groupId;// 分组id

  private String operating;// 完工操作人

  private String baoxiaoMemo;// 报销说明
  
  private Double justKilometres;//司机调价（公里数）

  private BigDecimal justMoney;//司机调价（金额）
  
  private Double ksMileage;//空驶里程
  
  private Double ddMileage;//调度里程
  
  private String realStartAddress;//真实上车地
  
  private Double realStartLat;//真实上车地纬度
  
  private Double realStartLng;//真实上车地经度

  /**
   * 仅用于返回的新加字段，与数据库不关联
   */
  private String ifTaxi; // 是否是出租车
  
  private String useType; // 用车类型 public:因公用车,private:因私用车
  
  private Integer bookStatus;

  private BigDecimal makePrice; //订单定价

  private Integer isMakePrice;//是否订单定价 0.否   1.是

  public BigDecimal getMakePrice() {
    if(makePrice==null){
      return new BigDecimal(0);
    }
    return makePrice;
  }

  public void setMakePrice(BigDecimal makePrice) {
    this.makePrice = makePrice;
  }

  public Integer getIsMakePrice() {
    if(isMakePrice==null){
      return 0;
    }
    return isMakePrice;
  }

  public void setIsMakePrice(Integer isMakePrice) {
    this.isMakePrice = isMakePrice;
  }

  public Integer getBookStatus() {
	return bookStatus;
}

public void setBookStatus(Integer bookStatus) {
	this.bookStatus = bookStatus;
}

public String getOperating() {
    return operating;
  }

  public void setOperating(String operating) {
    this.operating = operating;
  }

  public String getBaoxiaoMemo() {
    return baoxiaoMemo;
  }

  public void setBaoxiaoMemo(String baoxiaoMemo) {
    this.baoxiaoMemo = baoxiaoMemo;
  }
  

  public Double getJustKilometres() {
    return justKilometres;
  }

  public void setJustKilometres(Double justKilometres) {
    this.justKilometres = justKilometres;
  }

  public BigDecimal getJustMoney() {
    return justMoney;
  }

  public void setJustMoney(BigDecimal justMoney) {
    this.justMoney = justMoney;
  }

  public Double getKsMileage() {
    return ksMileage;
  }

  public void setKsMileage(Double ksMileage) {
    this.ksMileage = ksMileage;
  }

  public Double getDdMileage() {
    return ddMileage;
  }

  public void setDdMileage(Double ddMileage) {
    this.ddMileage = ddMileage;
  }

  public String getRealStartAddress() {
    return realStartAddress;
  }

  public void setRealStartAddress(String realStartAddress) {
    this.realStartAddress = realStartAddress;
  }

  public Double getRealStartLat() {
    return realStartLat;
  }

  public void setRealStartLat(Double realStartLat) {
    this.realStartLat = realStartLat;
  }

  public Double getRealStartLng() {
    return realStartLng;
  }

  public void setRealStartLng(Double realStartLng) {
    this.realStartLng = realStartLng;
  }



  private String createOrderName;// 下单人

  public String getCreateOrderName() {
    return createOrderName;
  }

  public void setCreateOrderName(String createOrderName) {
    this.createOrderName = createOrderName;
  }

  public Long getGroupId() {
    return groupId;
  }

  public void setGroupId(Long groupId) {
    this.groupId = groupId;
  }

  public String getMemo() {
    return memo;
  }

  public void setMemo(String memo) {
    this.memo = memo;
  }

  public String getFlightNo() {
    return flightNo;
  }

  public void setFlightNo(String flightNo) {
    this.flightNo = flightNo;
  }

  public String getTrainNo() {
    return trainNo;
  }

  public void setTrainNo(String trainNo) {
    this.trainNo = trainNo;
  }

  public Long getServiceTypeId() {
    return serviceTypeId;
  }

  public void setServiceTypeId(Long serviceTypeId) {
    this.serviceTypeId = serviceTypeId;
  }

  public ServiceType getServiceType() {
    return serviceType;
  }

  public void setServiceType(ServiceType serviceType) {
    this.serviceType = serviceType;
  }

  public String getEmployMemo() {
    return employMemo;
  }

  public void setEmployMemo(String employMemo) {
    this.employMemo = employMemo;
  }

  public Boolean getBaoxiao() {
    return baoxiao;
  }

  public void setBaoxiao(Boolean baoxiao) {
    this.baoxiao = baoxiao;
  }

  public Double getBaoxiaoMoney() {
    return baoxiaoMoney != null ? baoxiaoMoney : 0.0;
  }

  public void setBaoxiaoMoney(Double baoxiaoMoney) {
    this.baoxiaoMoney = baoxiaoMoney;
  }

  public Boolean getFirstOrderFree() {
    return firstOrderFree;
  }

  public void setFirstOrderFree(Boolean firstOrderFree) {
    this.firstOrderFree = firstOrderFree;
  }

  public Double getWaitPrice() {
    return waitPrice;
  }

  public void setWaitPrice(Double waitPrice) {
    this.waitPrice = waitPrice;
  }

  public String getShowPhone() {
    return showPhone;
  }

  public void setShowPhone(String showPhone) {
    this.showPhone = showPhone;
  }

  public Double getAlipayMoney() {
    return alipayMoney;
  }

  public void setAlipayMoney(Double alipayMoney) {
    this.alipayMoney = alipayMoney;
  }

  public Double getWeixinMoney() {
    return weixinMoney;
  }

  public void setWeixinMoney(Double weixinMoney) {
    this.weixinMoney = weixinMoney;
  }

  
  public Double getUnionpayMoney() {
    return unionpayMoney;
  }

  public void setUnionpayMoney(Double unionpayMoney) {
    this.unionpayMoney = unionpayMoney;
  }

  public Double getGuoluMoney() {
    return guoluMoney;
  }

  public void setGuoluMoney(Double guoluMoney) {
    this.guoluMoney = guoluMoney;
  }

  public Double getYuanchengMoney() {
    return yuanchengMoney;
  }

  public void setYuanchengMoney(Double yuanchengMoney) {
    this.yuanchengMoney = yuanchengMoney;
  }

  public Double getOtherMoney() {
    return otherMoney;
  }

  public void setOtherMoney(Double otherMoney) {
    this.otherMoney = otherMoney;
  }


  public Boolean getTreatment() {
    return treatment;
  }

  public void setTreatment(Boolean treatment) {
    this.treatment = treatment;
  }

  public Date getTreatmentDate() {
    return treatmentDate;
  }

  public void setTreatmentDate(Date treatmentDate) {
    this.treatmentDate = treatmentDate;
  }

  public String getPrePayTypeDetail() {
    return prePayTypeDetail;
  }

  public void setPrePayTypeDetail(String prePayTypeDetail) {
    this.prePayTypeDetail = prePayTypeDetail;
  }

  public String getAfterPayTypeDetail() {
    return afterPayTypeDetail;
  }

  public void setAfterPayTypeDetail(String afterPayTypeDetail) {
    this.afterPayTypeDetail = afterPayTypeDetail;
  }

  public Double getPreStartPrice() {
    return preStartPrice;
  }

  public void setPreStartPrice(Double preStartPrice) {
    this.preStartPrice = preStartPrice;
  }

  public Double getPremileagePrice() {
    return premileagePrice;
  }

  public void setPremileagePrice(Double premileagePrice) {
    this.premileagePrice = premileagePrice;
  }

  public Double getPrerunTimePrice() {
    return prerunTimePrice;
  }

  public void setPrerunTimePrice(Double prerunTimePrice) {
    this.prerunTimePrice = prerunTimePrice;
  }

  public Integer getPretravelTime() {
    return pretravelTime;
  }

  public void setPretravelTime(Integer pretravelTime) {
    this.pretravelTime = pretravelTime;
  }

  public Double getPremileage() {
    return premileage;
  }

  public void setPremileage(Double premileage) {
    this.premileage = premileage;
  }

  public String getStartAddressDetail() {
    return startAddressDetail;
  }

  public void setStartAddressDetail(String startAddressDetail) {
    this.startAddressDetail = startAddressDetail;
  }

  public String getEndAddressDetail() {
    return endAddressDetail;
  }

  public void setEndAddressDetail(String endAddressDetail) {
    this.endAddressDetail = endAddressDetail;
  }

  public Long getAreaId() {
    return areaId;
  }

  public void setAreaId(Long areaId) {
    this.areaId = areaId;
  }

  public String getEmployNo() {
    return employNo;
  }

  public void setEmployNo(String employNo) {
    this.employNo = employNo;
  }

  public String getEmployPhoto() {
    return employPhoto;
  }

  public void setEmployPhoto(String employPhoto) {
    this.employPhoto = employPhoto;
  }

  public Double getEmployScore() {
    return employScore;
  }

  public void setEmployScore(Double employScore) {
    this.employScore = employScore;
  }
  /**
   * 重复字段.
   */
  
  public List<OrderStatus> getStatusList() {
    if (statusList != null) {
      return statusList;
    } else {
      return orderStatuslist;
    }
  }

  public void setStatusList(List<OrderStatus> statusList) {
    this.statusList = statusList;
  }

  public Boolean getZhuanchePrePay() {
    return zhuanchePrePay;
  }

  public void setZhuanchePrePay(Boolean zhuanchePrePay) {
    this.zhuanchePrePay = zhuanchePrePay;
  }


  public Date getFinishTime() {
    return finishTime;
  }

  public void setFinishTime(Date finishTime) {
    this.finishTime = finishTime;
  }

  public List<OrderStatus> getOrderStatuslist() {
    return orderStatuslist;
  }

  public void setOrderStatuslist(List<OrderStatus> orderStatuslist) {
    this.orderStatuslist = orderStatuslist;
  }

  public OrderReview getOrderReview() {
    return orderReview;
  }

  public void setOrderReview(OrderReview orderReview) {
    this.orderReview = orderReview;
  }
  
  /**
   * 处理评价内容.
   */
  
  public String getReviewContent() {
    if (orderReview != null) {
      return orderReview.getContent();
    } else {
      return reviewContent;
    }
  }

  public void setReviewContent(String reviewContent) {
    this.reviewContent = reviewContent;
  }

  public List<OrderMemo> getOrderMemos() {
    return orderMemos;
  }

  public void setOrderMemos(List<OrderMemo> orderMemos) {
    this.orderMemos = orderMemos;
  }

  private static final long serialVersionUID = 1L;

  public Long getId() {
    return id;
  }

  public void setId(Long id) {
    this.id = id;
  }

  public String getOrderNo() {
    return orderNo;
  }

  public void setOrderNo(String orderNo) {
    this.orderNo = orderNo == null ? null : orderNo.trim();
  }

  public Long getPassengerId() {
    return passengerId;
  }

  public void setPassengerId(Long passengerId) {
    this.passengerId = passengerId;
  }

  public String getPassengerName() {
    return passengerName;
  }

  public void setPassengerName(String passengerName) {
    this.passengerName = passengerName == null ? null : passengerName.trim();
  }

  public String getPassengerPhone() {
    return passengerPhone;
  }

  public void setPassengerPhone(String passengerPhone) {
    this.passengerPhone = passengerPhone == null ? null : passengerPhone.trim();
  }

  public Long getCarId() {
    return carId;
  }

  public void setCarId(Long carId) {
    this.carId = carId;
  }

  public Long getCarTypeId() {
    return carTypeId;
  }

  public void setCarTypeId(Long carTypeId) {
    this.carTypeId = carTypeId;
  }

  public String getCarNumber() {
    return carNumber;
  }

  public void setCarNumber(String carNumber) {
    this.carNumber = carNumber == null ? null : carNumber.trim();
  }

  public Long getChannelId() {
    return channelId;
  }

  public void setChannelId(Long channelId) {
    this.channelId = channelId;
  }

  public String getChannelName() {
    return channelName;
  }

  public void setChannelName(String channelName) {
    this.channelName = channelName == null ? null : channelName.trim();
  }

  public Integer getStatus() {
    return status;
  }

  public void setStatus(Integer status) {
    this.status = status;
  }

  public Long getEmployId() {
    return employId;
  }

  public void setEmployId(Long employId) {
    this.employId = employId;
  }

  public String getEmployName() {
    return employName;
  }

  public void setEmployName(String employName) {
    this.employName = employName == null ? null : employName.trim();
  }

  public String getEmployPhone() {
    return employPhone;
  }

  public void setEmployPhone(String employPhone) {
    this.employPhone = employPhone == null ? null : employPhone.trim();
  }

  public Long getCompanyId() {
    return companyId;
  }

  public void setCompanyId(Long companyId) {
    this.companyId = companyId;
  }

  public String getCompanyName() {
    return companyName;
  }

  public void setCompanyName(String companyName) {
    this.companyName = companyName == null ? null : companyName.trim();
  }

  public Long getRentalCompanyId() {
    return rentalCompanyId;
  }

  public void setRentalCompanyId(Long rentalCompanyId) {
    this.rentalCompanyId = rentalCompanyId;
  }

  public String getRentalCompanyName() {
    return rentalCompanyName;
  }

  public void setRentalCompanyName(String rentalCompanyName) {
    this.rentalCompanyName = rentalCompanyName == null ? null : rentalCompanyName.trim();
  }

  public Long getVoiceId() {
    return voiceId;
  }

  public void setVoiceId(Long voiceId) {
    this.voiceId = voiceId;
  }

  public String getVoiceHttpPath() {
    return voiceHttpPath;
  }

  public void setVoiceHttpPath(String voiceHttpPath) {
    this.voiceHttpPath = voiceHttpPath;
  }

  public String getAppkey() {
    return appkey;
  }

  public void setAppkey(String appkey) {
    this.appkey = appkey == null ? null : appkey.trim();
  }

  public Date getCreated() {
    return created;
  }

  public void setCreated(Date created) {
    this.created = created;
  }

  public Date getUpdated() {
    return updated;
  }

  public void setUpdated(Date updated) {
    this.updated = updated;
  }

  public Boolean getIsClosed() {
    return isClosed;
  }

  public void setIsClosed(Boolean isClosed) {
    this.isClosed = isClosed;
  }

  public Boolean getReview() {
    if (null != review) {
      return review;
    } else {
      return false;
    }
  }

  public void setReview(Boolean review) {
    this.review = review;
  }

  public Long getVersion() {
    return version;
  }

  public void setVersion(Long version) {
    this.version = version;
  }

  public String getCancelCause() {
    return cancelCause;
  }

  public void setCancelCause(String cancelCause) {
    this.cancelCause = cancelCause == null ? null : cancelCause.trim();
  }

  public String getPayType() {
    return payType;
  }

  public void setPayType(String payType) {
    this.payType = payType == null ? null : payType.trim();
  }

  public Date getLasturge() {
    return lasturge;
  }

  public void setLasturge(Date lasturge) {
    this.lasturge = lasturge;
  }

  public Integer getStartWait() {
    return startWait;
  }

  public void setStartWait(Integer startWait) {
    this.startWait = startWait;
  }

  public String getStartAddress() {
    return startAddress;
  }

  public void setStartAddress(String startAddress) {
    this.startAddress = startAddress == null ? null : startAddress.trim();
  }

  public Double getStartLat() {
    return startLat;
  }

  public void setStartLat(Double startLat) {
    this.startLat = startLat;
  }

  public Double getStartLng() {
    return startLng;
  }

  public void setStartLng(Double startLng) {
    this.startLng = startLng;
  }

  public Integer getMidwayWait() {
    return midwayWait;
  }

  public void setMidwayWait(Integer midwayWait) {
    this.midwayWait = midwayWait;
  }

  public String getEndAddress() {
    return endAddress;
  }

  public void setEndAddress(String endAddress) {
    this.endAddress = endAddress == null ? null : endAddress.trim();
  }

  public Double getEndLat() {
    return endLat;
  }

  public void setEndLat(Double endLat) {
    this.endLat = endLat;
  }

  public Double getEndLng() {
    return endLng;
  }

  public void setEndLng(Double endLng) {
    this.endLng = endLng;
  }

  public Long getEmployCompanyId() {
    return employCompanyId;
  }

  public void setEmployCompanyId(Long employCompanyId) {
    this.employCompanyId = employCompanyId;
  }

  public Double getEmployProfit() {
    return employProfit;
  }

  public void setEmployProfit(Double employProfit) {
    this.employProfit = employProfit;
  }

  public Double getCompanyProfit() {
    return companyProfit;
  }

  public void setCompanyProfit(Double companyProfit) {
    this.companyProfit = companyProfit;
  }

  public Double getStartPrice() {
    return startPrice;
  }

  public void setStartPrice(Double startPrice) {
    this.startPrice = startPrice;
  }

  public Double getMileage() {
    return mileage;
  }

  public void setMileage(Double mileage) {
    this.mileage = mileage;
  }

  public Integer getRunTime() {
    return runTime;
  }

  public void setRunTime(Integer runTime) {
    this.runTime = runTime;
  }

  public Double getMileagePrice() {
    return mileagePrice;
  }

  public void setMileagePrice(Double mileagePrice) {
    this.mileagePrice = mileagePrice;
  }

  public Double getRunTimePrice() {
    return runTimePrice;
  }

  public void setRunTimePrice(Double runTimePrice) {
    this.runTimePrice = runTimePrice;
  }

  public Long getCouponId() {
    return couponId;
  }

  public void setCouponId(Long couponId) {
    this.couponId = couponId;
  }

  public Double getCouponMoney() {
    return couponMoney;
  }

  public void setCouponMoney(Double couponMoney) {
    this.couponMoney = couponMoney;
  }

  public Double getBudgetPay() {
    return budgetPay;
  }

  public void setBudgetPay(Double budgetPay) {
    this.budgetPay = budgetPay;
  }

  public Double getRealPay() {
    return realPay;
  }

  public void setRealPay(Double realPay) {
    this.realPay = realPay;
  }

  public Double getCashMoney() {
    return cashMoney;
  }

  public void setCashMoney(Double cashMoney) {
    this.cashMoney = cashMoney;
  }

  public Double getSignMoney() {
    return signMoney;
  }

  public void setSignMoney(Double signMoney) {
    this.signMoney = signMoney;
  }

  public Double getBalanceMoney() {
    return balanceMoney;
  }

  public void setBalanceMoney(Double balanceMoney) {
    this.balanceMoney = balanceMoney;
  }

  public Date getServerTime() {
    return serverTime;
  }

  public void setServerTime(Date serverTime) {
    this.serverTime = serverTime;
  }

  public String getCarName() {
    return carName;
  }

  public void setCarName(String carName) {
    this.carName = carName;
  }
  
  public String getIfTaxi() {
	return ifTaxi;
  }

  public void setIfTaxi(String ifTaxi) {
	this.ifTaxi = ifTaxi;
  }

  public String getUseType() {
    return useType;
  }

  public void setUseType(String useType) {
    this.useType = useType;
  } 

  public String getStartPlaceToDriverDistanceStr() {
	return startPlaceToDriverDistanceStr;
}

public void setStartPlaceToDriverDistanceStr(
		String startPlaceToDriverDistanceStr) {
	this.startPlaceToDriverDistanceStr = startPlaceToDriverDistanceStr;
}

/**
   * 车型名称为空则返回空字符串.  
   */
  
  public String getCarTypeName() {
    if (StringUtils.isNotBlank(carTypeName)) {
      return carTypeName;
    } else {
      return "";
    }
  }

  public void setCarTypeName(String carTypeName) {
    this.carTypeName = carTypeName;
  }

public Double getStartPlaceToDriverDistance() {
	return startPlaceToDriverDistance;
}

public void setStartPlaceToDriverDistance(Double startPlaceToDriverDistance) {
	this.startPlaceToDriverDistance = startPlaceToDriverDistance;
}

public enum ServiceType {

    tangzu,

    rizu,

    banrizu,

    jieji,

    songji,

    jiezhan,

    songzhan
  }
}
